package com.bjsxt.dto;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @author:liao
 * @Description:TODO 菜单前后端传输类
 * @date:2020/12/11
 */
@ApiModel(value = "com-bjsxt-dto-MenuDto")
@Data
@EqualsAndHashCode(callSuper = true) // 表示使用equals比较时考虑父类的属性
@AllArgsConstructor
@NoArgsConstructor
public class MenuDto extends BaseDto {
    /**
     * 菜单id
     */
    @ApiModelProperty(value = "菜单id")
    private Long menuId;
    /**
     * 父菜单ID
     */
    @ApiModelProperty(value = "父菜单id")
    private Long parentId;
    /**
     * 父节点id集合
     */
    @ApiModelProperty(value = "父节点id集合")
    private String parentIds;
    /**
     * 菜单名称
     */
    @NotBlank(message = "菜单名称不能为空")
    @ApiModelProperty(value = "菜单名称")
    private String menuName;
    /**
     * 菜单类型
     */
    @NotBlank(message = "菜单类型不能为空")
    @ApiModelProperty(value = "菜单类型(M 目录 C 菜单 F按钮)")
    private String menuType;
    /**
     * 权限标识
     */
    @ApiModelProperty(value = "权限标识")
    private String perCode;
    /**
     * 路由地址
     */
    @ApiModelProperty(value = "路由地址")
    private String path;
    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;
    /**
     * 菜单状态(0正常  1停用)
     */
    @NotBlank(message = "菜单状态不能为空")
    @ApiModelProperty(value = "菜单状态 0正常  1停用")
    private String status;
}
